Menu Hierarchy Skipping Dialog For Directed Dialog Speech Recognition

ABSTRACT

A method and a processing device for managing an interactive speech recognition system is provided. Whether a voice input relates to expected input, at least partially, of any one of a group of menus different from a current menu is determined. If the voice input relates to the expected input, at least partially, of any one of the group of menus different from the current menu, skipping to the one of the group of menus is performed. The group of menus is different from the current menu include menus at multiple hierarchical levels.

PRIORITY INFORMATION

The present application is a continuation of U.S. patent applicationSer. No. 13/908,411, filed Jun. 3, 2013, which is a continuation of U.S.patent application Ser. No. 11/276,542, filed Mar. 4, 2006, now U.S.Pat. No. 8,457,973, issued Jun. 4, 2013, the contents of which areincorporated by reference in their entirety.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to directed dialog speech recognitionsystems and more specifically to a system and method for directing adialog in an interactive speech recognition system and for permittingskipping of menus in a menu hierarchy for users familiar with theinteractive speech recognition system.

2. Introduction

Directed dialog speech recognition systems are implemented forautomation of customer care applications, as well as other customerapplications. A typical directed dialog speech recognition system mayreplace an older touch tone interactive voice response (IVR) system or alive attendant. Directed dialog speech recognition systems respond toindividual words or phrases defined in a grammar. The individual wordsor phrases are usually prompted in a menu. The system may also prompt auser for yes/no answers to questions, as well as form-fillinginformation, such as, for example, credit card numbers. Calls may alsobe routed by the system to attendants or alternate destinations.

Other than providing an ability to speak words rather than use touchtones, conventional directed dialog speech recognition systems providelittle in terms of user interface improvement over touch tone menusystems. A system which offers many options may have a hierarchical menustructure, such that novice users may be walked through a long list ofoptions in a conceptual manner. However, expert system users may becomefrustrated when forced to walk through the long list of options.

SUMMARY OF THE INVENTION

Additional features and advantages of the invention will be set forth inthe description which follows, and in part will be obvious from thedescription, or may be learned by practice of the invention. Thefeatures and advantages of the invention may be realized and obtained bymeans of the instruments and combinations particularly pointed out inthe appended claims. These and other features of the present inventionwill become more fully apparent from the following description andappended claims, or may be learned by the practice of the invention asset forth herein.

In a first aspect of the invention, a method for managing an interactivespeech recognition system is provided. Whether a voice input relates toexpected input, at least partially, of any one of a group of menusdifferent from a current menu is determined. If the voice input relatesto the expected input, at least partially, of any one of the group ofmenus different from the current menu, skipping to the one of the groupof menus is performed. The group of menus different from the currentmenu include menus at multiple hierarchical levels.

In a second aspect of the invention, a processing device is provided.The processing device includes an electronic storage component, and atleast one processor operatively connected to the electronic storagecomponent. The at least one processor is arranged to determine whether avoice input relates to expected input, at least partially, of any one ofa group of menus different from a current menu, and if the voice inputrelates, at least partially, to the expected input of any one of theplurality of menus different from a current menu, skip to the one of thegroup of menus different from the current menu. The group of menusdifferent from the current menu include menus at multiple hierarchicallevels.

In a third aspect of the invention, a machine-readable medium that hasinstructions recorded therein for at least one processor is provided.The machine-readable medium includes instructions for determiningwhether a voice relates to expected input, at least partially, of anyone of a group of menus different from a current menu, and instructionsfor skipping to the one of the group of menus different from the currentmenu if the voice input is determined to relate, at least partially, tothe expected input of any one of the group of menus different from thecurrent menu. The group of menus different from the current menu includemenus at multiple hierarchical levels.

In a fourth aspect of the invention, a processing device is provided.The processing device includes means for determining whether a voiceinput relates to expected input, at least partially, of any one of agroup of menus different from a current menu, and means for skipping tothe one of the group of menus different from the current menu if thevoice input relates to the expected input, at least partially, of anyone of the group of menus different from the current menu. The group ofmenus different from the current menu include menus at multiplehierarchical levels.

BRIEF DESCRIPTION OF THE DRAWINGS

In order to describe the manner in which the above-recited and otheradvantages and features of the invention can be obtained, a moreparticular description of the invention briefly described above will berendered by reference to specific embodiments thereof which areillustrated in the appended drawings. Understanding that these drawingsdepict only typical embodiments of the invention and are not thereforeto be considered to be limiting of its scope, the invention will bedescribed and explained with additional specificity and detail throughthe use of the accompanying drawings in which:

FIG. 1 illustrates an exemplary directed dialog speech recognitionsystem consistent with principles of the invention;

FIG. 2 illustrates an exemplary processing device that may be used toimplement one or more components of the exemplary system shown in FIG.1;

FIG. 3 illustrates a hierarchical menu for an exemplary directed dialogspeech recognition system; and

FIG. 4 is a flowchart that illustrates an exemplary process that may beused in implementations consistent with the principles of the invention.

DETAILED DESCRIPTION OF THE INVENTION

Various embodiments of the invention are discussed in detail below.While specific implementations are discussed, it should be understoodthat this is done for illustration purposes only. A person skilled inthe relevant art will recognize that other components and configurationsmay be used without parting from the spirit and scope of the invention.

Exemplary Directed Dialog Speech Recognition System

FIG. 1 is a functional block diagram of an exemplary directed dialogspeech recognition system 100 consistent with the principles of theinvention. Directed dialog speech recognition system 100 may include anautomatic speech recognition (ASR) module 102, a dialog management (DM)module 106, a spoken language generation (SLG) module 108, and atext-to-speech (TTS) module 110.

ASR module 102 may analyze speech input and may provide a transcriptionof the speech input as output. DM module 106 may receive the transcribedinput, may apply a grammar to the transcribed input to analyze a word orgroup of words that are included in the transcribed input, may determineto which one of a group of menus the speech input is directed, mayprocess the received input and may determine an action, such as, forexample, providing a spoken response, based on the input. SLG module 108may generate a transcription of one or more words in response to theaction provided by DM module 106. TTS module 110 may receive thetranscription as input and may provide generated audible speech asoutput based on the transcribed speech.

Thus, the modules of system 100 may recognize speech input, such asspeech utterances, may transcribe the speech input, may match thetranscribed speech to a grammar, may determine an appropriate responseto the speech input, may generate text of the appropriate response andfrom that text, generate audible “speech” from system 100, which theuser then hears. Those of ordinary skill in the art will understand theprogramming languages and means for generating and training ASR module102 or any of the other modules in the directed dialog speechrecognition system. Further, the modules of system 100 may operateindependent of a full dialog system.

FIG. 1 is an exemplary spoken dialog speech recognition system. Otherspoken dialog speech recognition systems may include other types ofmodules and may have different quantities of various modules.

Exemplary System

FIG. 2 illustrates an exemplary processing system 200 in which one ormore of the modules of system 100 may be implemented. Thus, system 100may include at least one processing system, such as, for example,exemplary processing system 200. Processing device 200 may include a bus210, a processor 220, a memory 230, a read only memory (ROM) 240, astorage device 250, an input device 260, an output device 270, and acommunication interface 280. Bus 210 may permit communication among thecomponents of processing device 200.

Processor 220 may include at least one conventional processor ormicroprocessor that interprets and executes instructions. Memory 230 maybe a random access memory (RAM) or another type of dynamic storagedevice that stores information and instructions for execution byprocessor 220. Memory 230 may also store temporary variables or otherintermediate information used during execution of instructions byprocessor 220. ROM 240 may include a conventional ROM device or anothertype of static storage device that stores static information andinstructions for processor 220. Storage device 250 may include any typeof media, such as, for example, magnetic or optical recording media andits corresponding drive.

Input device 260 may include one or more conventional mechanisms thatpermit a user to input information to system 200, such as a keyboard, amouse, a pen, a voice recognition device, a microphone, a headset, etc.Output device 270 may include one or more conventional mechanisms thatoutput information to the user, including a display, a printer, one ormore speakers, a headset, or a medium, such as a memory, or a magneticor optical disk and a corresponding disk drive. Communication interface280 may include any transceiver-like mechanism that enables processingdevice 200 to communicate via a network. For example, communicationinterface 280 may include a modem, or an Ethernet interface forcommunicating via a local area network (LAN). Alternatively,communication interface 280 may include other mechanisms forcommunicating with other devices and/or systems via wired, wireless oroptical connections.

Processing device 200 may perform such functions in response toprocessor 220 executing sequences of instructions contained in acomputer-readable medium, such as, for example, memory 230, a magneticdisk, or an optical disk. Such instructions may be read into memory 230from another computer-readable medium, such as storage device 250, orfrom a separate device via communication interface 280.

Processing device 200 may be, for example, a personal computer (PC), orany other type of processing device capable of processing textual data.In alternative implementations, such as, for example, a distributedprocessing implementation, a group of processing devices 200 maycommunicate with one another via a network such that various processorsmay perform operations pertaining to different aspects of the particularimplementation.

In some implementations consistent with the principles of the invention,processing device 200 may receive input via, for example, a wired orwireless telephone line connection and may provide output via thetelephone line connection.

Directed Dialog Speech Recognition

A directed dialog speech recognition system may replace a live attendantor a touch tone interactive voice response (IVR) system. Directed dialogsystems may respond to individual words or phrases, defined in agrammar. The individual words or phrases may be prompted in a menu, suchas, for example, a menu for an express delivery customer application.

FIG. 3 illustrates a hierarchical menu for an exemplary directed dialogspeech recognition system that implements an express delivery customerapplication. First, a user may hear “what do you wish to do, please say‘send package’, ‘track package’, or ‘check account’” with respect tomain menu 302.

If the user responds with “send package”, then the application mayproceed to menu 304 and may generate speech for the user asking the user“international or domestic”. If the user responds with “domestic”, theapplication may proceed to menu 306 and may generate speech for the userasking “overnight, next day, or ground”. If, at menu 304, the userresponds with “international”, the application may proceed to menu 308and may generate speech for the user asking “overnight, next day, orground”.

If, at menu 302, the user responds with “track package”, the applicationmay proceed to menu 310, and if, at menu 302, the user responds with“check account”, the application may proceed to menu 312.

The hierarchical menu structure of FIG. 3 is exemplary. The applicationmay include other prompts or questions for the user, such as, forexample, yes/no questions and form-filling questions, such as, forexample, “please say your credit card number”.

In implementations consistent with the principles of the invention, asingle grammar may be used to recognize responses that may apply to anymenu in the hierarchical menu structure. In an alternate implementation,some menus or groups of menus may have a slightly different grammar.Non-overlapping key phrases may be chosen for each of the menus in thehierarchy. In one implementation, progressive elaborations of a phrasemay be used. For example, the exemplary express delivery customerapplication may use progressive elaborations of the phrase “sendpackage”, such as, “send domestic package”, “send internationalpackage”, “send domestic package overnight”, “send domestic package nextday”, “send domestic package ground”, “send international packageovernight”, “send international package next day”, and “sendinternational package ground”. In other implementations, direct phrasesmay be used instead of progressive elaborations of a phrase. Thus, inimplementations consistent with the principles of the invention, theuser may be prompted for a subset of responses, such as responses thatapply to a current menu, although the user may reply with a responsethat may apply to any of the menus. Further, the user may respond with aportion of a key phrase. For example, using the exemplary expressdelivery customer application, a user may respond with “overnight” andthe application may prompt the user for additional information, such as,“do you want to send an overnight package international or domestic”.

Implementations consistent with the principles of the invention maypermit users to skip menu prompting by, for example, responding to aprompt with a key phrase associated with another menu. For example, withreference to FIG. 3, if the user responds to a prompt associated withmenu 302 with “send domestic package overnight”, the application mayperform an action associated with sending an overnight domestic package.If the user responds to the prompt associated with menu 302 by saying“send international package”, the application may skip to menu 308 andmay prompt the user with generated speech saying “overnight, next day,ground”.

Implementations consistent with the principles of the invention mayprovide a tutorial to a user who is determined to be a non-expert. Insuch implementations, the user's behavior may be recorded. In oneimplementation, if the user is determined to not have used a keyword orkey phrase associated with a menu other than the current menu, then theuser may be considered a non-expert. In another implementation, theapplication may keep a dynamic record of menu traversal in real time andmay provide a tutorial based upon the path traversed. For example, ifthe dynamic record of menu traversal indicates that the user traversedmenus inefficiently, such as, traversing menus and then backtracking toanother menu before reaching a final menu, or traversing menus veryslowly, then the user may be considered a non-expert and the system mayprovide a tutorial. For example, a user, who the application considersto be a non-expert user, sending an overnight international package mayreceive a tutorial of “next time, say ‘send international packageovernight’ after the first prompt”. A user who the application considersto be an expert user may not be presented with a tutorial.

In other implementations consistent with the principles of theinvention, the system may accommodate a corrected phrase. For example,if the user says a phrase, such as, for example, “oh no, I meant to saycheck account”, or “no, I want check my account”, the system mayrecognize a keyword or phrase, for example, “check account”, and mayskip to the proper menu or take appropriate action (i.e., present theuser's account balance).

Exemplary Process

FIG. 4 is a flowchart of an exemplary process that may be used inimplementations consistent with the principles of the invention. Theprocess may begin by DM module 106 informing SLG module 108 to sendtext, corresponding to a prompt, to TTS module 110, which may perform atext-to-speech operation to generate a speech prompt, such as, forexample, “what do you want to do”, to a user (act 402). The user mayhear the prompt and may verbally respond to the prompt. The verbalresponse may be converted to text by ASR module 102 and the text passedto DM module 106 (act 404).

DM module 106 may receive the text of the user's response and maydetermine whether the response matches a keyword or key phraseassociated with the current menu (act 406). If the response isdetermined to match a keyword or key phrase associated with the currentmenu, then DM module 106 may process the response (act 408). Processingthe response may include performing a final action, such as, forexample, providing account information for an account, providingtracking information for a package, etc. Next, DM module 106 maydetermine whether the user's request is completed, i.e., whether a finalaction was performed (act 410). If the user's request is not completed,the DM module 106 may determine which menu is next (act 412) and mayperform acts 402-0410 again.

If, at act 410, DM module 106 determines that the user's request iscompleted, then DM module 106 may determine whether the user is anexpert user (act 420). In one implementation, this may be performed bydetermining whether a skip was performed based on user input. In anotherimplementation, this may be performed by tracking and recording which ofthe menus DM module 106 traverses based on the user's input and mayfurther track a length of time spent within each menu. Based on recordedtracking information, DM module 106 may determine whether the usertraversed a particular track and then backtracked, whether the userspent an unusual amount of time in a menu, such as, for example, 5minutes or some other suitable time limit, or whether the user caused askip based on input before proceeding. DM module 106 may then determinethat the user is an expert user if the user did not backtrack, did notspend an unusual amount of time in a menu, and caused a skip. If DMmodule 106 determines that the user is not an expert (a non-expert),then DM module 106 may inform SLG module 108 to send text to TTS module110 to provide a tutorial to the user (act 422). For, example, if DMmodule 106 determines that the user should receive a tutorial based onsending a next day international package, the DM module 106 may informSLG module 108 to generate appropriate text to TTS module 110, which maygenerate a verbal tutorial for the user. The tutorial may be of a formsuch as, for example, “next time you wish to” <perform action> “simplysay” <keyword> or <key phrase>.

If, at act 406, DM module 106 determines that the response is not aresponse for the current menu, the DM module 106 may determine whetherthe input includes a keyword or key phrase for another one of the menusor a final action (act 414). If DM module 106 determines that the inputdoes include a keyword or key phrase for another one of the menus or afinal action, the DM module 106 may perform a skip to the other menu ormay prepare to perform the final action (act 416). DM module may thenperform act 408.

If, at act 414, DM module 106 determines that the input does not match akeyword or key phrase of any menu, then DM module 106, in cooperationwith SLG module 108 and TTS module 110, may prompt and receive from theuser more information (act 418). For example, the user may be promptedwith “do you wish to send a package”, do you wish to check youraccount”, etc. After receiving additional information, DM module 106 maythen determine whether the additional information can be used to matchthe response to one of the menus (act 416).

CONCLUSION

The above-described embodiments are exemplary and are not limiting withrespect to the scope of the invention. Embodiments within the scope ofthe present invention may also include computer-readable media forcarrying or having computer-executable instructions or data structuresstored thereon. Such computer-readable media can be any available mediathat can be accessed by a general purpose or special purpose computer.By way of example, and not limitation, such computer-readable media cancomprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage,magnetic disk storage or other magnetic storage devices, or any othermedium which can be used to carry or store desired program code means inthe form of computer-executable instructions or data structures. Wheninformation is transferred or provided over a network or anothercommunications connection (either hardwired, wireless, or combinationthereof) to a computer, the computer properly views the connection as acomputer-readable medium. Thus, any such connection is properly termed acomputer-readable medium. Combinations of the above should also beincluded within the scope of the computer-readable media.

Computer-executable instructions include, for example, instructions anddata which cause a general purpose computer, special purpose computer,or special purpose processing device to perform a certain function orgroup of functions. Computer-executable instructions also includeprogram modules that are executed by computers in stand-alone or networkenvironments. Generally, program modules include routines, programs,objects, components, and data structures, etc. that perform particulartasks or implement particular abstract data types. Computer-executableinstructions, associated data structures, and program modules representexamples of the program code means for executing steps of the methodsdisclosed herein. The particular sequence of such executableinstructions or associated data structures represents examples ofcorresponding acts for implementing the functions described in suchsteps.

Those of skill in the art will appreciate that other embodiments of theinvention may be practiced in network computing environments with manytypes of computer system configurations, including personal computers,hand-held devices, multi-processor systems, microprocessor-based orprogrammable consumer electronics, network PCs, minicomputers, mainframecomputers, and the like. Embodiments may also be practiced indistributed computing environments where tasks are performed by localand remote processing devices that are linked (either by hardwiredlinks, wireless links, or by a combination thereof) through acommunications network. In a distributed computing environment, programmodules may be located in both local and remote memory storage devices.

Although the above description may contain specific details, they shouldnot be construed as limiting the claims in any way. Other configurationsof the described embodiments of the invention are part of the scope ofthis invention. For example, a natural speech module may be used inimplementations instead of a TTS module. In such a system, the naturalspeech module may play a recorded announcement to a user. Further, inother implementations, hardwired logic may be used instead ofprocessors, or one or more application specific integrated circuits(ASICs) may be used in implementations consistent with the principles ofthe invention. In addition, implementations consistent with theprinciples of the invention may have more or fewer acts than asdescribed, or may implement acts in a different order than as shown.Accordingly, the appended claims and their legal equivalents should onlydefine the invention, rather than any specific examples given.

We claim as our invention:
 1. A method comprising: determining, via aprocessor, whether a voice input matches expected input of a differentmenu from a current menu in a menu system; and when the voice input doesnot relate to the expected input: identifying the voice input as fromone of an expert and a non-expert based on interactions with the menusystem; and when the voice input is from the non-expert, providing atutorial describing how to skip to the different menu.
 2. The method ofclaim 1, further comprising: when the voice input is from the expert,not presenting the tutorial.
 3. The method of claim 1, furthercomprising: when the voice input relates to the expected input, skippingto the different menu.
 4. The method of claim 1, wherein the record ismodified in real-time as the menu traversal tracks are modified.
 5. Themethod of claim 1, further comprising using a single grammar withrespect to both the different menu and the current menu.
 6. The methodof claim 1, further comprising: informing a user how to cause a menuskip when the voice input relates to the expected input.
 7. The methodof claim 1, wherein determining whether the voice input matches expectedinput further comprises: recognizing one of a key phrase and a keywordin the voice input; and matching the one of the key phrase and thekeyword to data associated with the different menu.
 8. The method ofclaim 6, wherein each of the current menu and the different menu haveone of an associated key word and an associated key phrase that isnon-overlapping.
 9. The method of claim 1, wherein determining whetherthe voice input matches expected input further comprises: determiningthe voice input comprises a conversational correction.
 10. A systemcomprising: a processor; and a computer-readable storage medium havinginstructions stored which, when executed by the processor, result in theprocessor performing operations comprising: determining, via aprocessor, whether a voice input matches expected input of a differentmenu from a current menu in a menu system; and when the voice input doesnot relate to the expected input: identifying the voice input as fromone of an expert and a non-expert based on interactions with the menusystem; and when the voice input is from the non-expert, providing atutorial describing how to skip to the different menu.
 11. The system ofclaim 10, the computer-readable storage medium having instructionsstored which, when executed by the processor, result in operationscomprising: when the voice input is from the expert, not presenting thetutorial.
 12. The system of claim 10, the computer-readable storagemedium having instructions stored which, when executed by the processor,result in operations comprising: when the voice input relates to theexpected input, skipping to the different menu.
 13. The system of claim10, wherein the record is modified in real-time as the menu traversaltracks are modified.
 14. The system of claim 10, the computer-readablestorage medium having instructions stored which, when executed by theprocessor, result in operations comprising using a single grammar withrespect to both the different menu and the current menu.
 15. The systemof claim 10, the computer-readable storage medium having instructionsstored which, when executed by the processor, result in operationscomprising: informing a user how to cause a menu skip when the voiceinput relates to the expected input.
 16. The system of claim 10, whereindetermining whether the voice input matches expected input furthercomprises: recognizing one of a key phrase and a keyword in the voiceinput; and matching the one of the key phrase and the keyword to dataassociated with the different menu.
 17. The system of claim 16, whereineach of the current menu and the different menu have one of anassociated key word and an associated key phrase that isnon-overlapping.
 18. The system of claim 10, wherein determining whetherthe voice input matches expected input further comprises: determiningthe voice input comprises a conversational correction.
 19. Acomputer-readable storage device having instructions stored which, whenexecuted by a computing device, result in the computing deviceperforming operations comprising: determining, via a processor, whethera voice input matches expected input of a different menu from a currentmenu in a menu system; and when the voice input does not relate to theexpected input: identifying the voice input as from one of an expert anda non-expert based on interactions with the menu system; and when thevoice input is from the non-expert, providing a tutorial describing howto skip to the different menu.
 20. The computer-readable storage deviceof claim 19, having instructions stored which, when executed by theprocessor, result in operations comprising: when the voice input is fromthe expert, not presenting the tutorial.